<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>

        // this指向及如何改变this指向(call / apply / bind)

        // js中的对象是由构造函数new出来的   new叫做修饰符
        //     1 创建了一个对象
        //     2 this -> 对象
        //     3 返回了这个对象   
        //     4 constructor -> 这个构造函数


        // prototype  每一个函数都有一个属性叫做prototype , 给实例化对象提供公有的属性和方法


        // 对象的语法形式   []的方式定义键名

        // onclick / onmouseover    ele['onclick']   =>     ele['on' + type]
        // addEventListener('click' , fn)    addEventListener(type , fn)


        

        var a = 'sex' ;

        const obj = {
            name : 'cc' ,
            ['age'] : 18 ,
            [a] : '女' , 
            ['say'] : function(){}
        }


        obj.say();
        obj['say']







        var name = 'yy' ;


        function Fn(name) {
            this.name = name ;
            console.log(this);
        }

        Fn.prototype.say = function () {}


        const f = new Fn('cc') ;    // f 这个对象

        Fn();     // window 



    </script>
    
</body>
</html>